Web mining to build a landmark database and applications thereof

ABSTRACT

This invention relates to building a landmark database from web data. In one embodiment, a computer-implemented method builds a landmark database. Web data including a web page is received from one or more websites via one or more networks. The web data is interpreted using at least one processor to determine landmark data describing a landmark. At least a portion of the landmark data identifies a landmark. Finally, a visual model is generated using the landmark data. A computing device is able to recognize the landmark in an image based on the visual model.

BACKGROUND

1. Field of the Invention

This invention generally relates to data mining.

2. Background Art

Landmarks can include easily recognizable, well-known places andbuildings, such as, for example, monuments, churches, historical sites,and seats of government. For tourists, visiting landmarks may beimportant parts of their tours. For this reason, tourists often takephotographs or videos of landmarks. Many tourists share theirphotographs over the Internet through photo-sharing websites, such as aPICASAWEB site.

Automatically recognizing landmarks in images and videos is useful forseveral reasons. First, by capturing the visual characteristics oflandmarks, a landmark recognition engine may identify clean, unobscuredlandmark images. The clean landmark images may be used in virtualtourism to simulate a tour for a user. Second, a landmark recognitionengine may be used to geolocate media and to generate a description ofmedia content. Third, a landmark recognition engine may be used tocatalogue media by landmark. When media are catalogued by landmark, theymay be used, for example, to provide tour guide recommendations.

To recognize a landmark, a landmark recognition engine correlates animage of a landmark with known images of the landmark. To make thecorrelation, the landmark recognition engine needs a visual model basedon or comprised of known images of the landmark. Thus, a landmarkrecognition engine relies on a landmark database with a listing oflandmarks and corresponding visual models to recognize landmarks.

At present, efforts to automatically generate a landmark database haveused data from photo-sharing websites. While this approach hasadvantages, the resulting landmark database tends to be biased to theinterests of a particular user group.

Systems and methods are needed that build a large, comprehensivelandmark database from a broader range of publicly available photos.

BRIEF SUMMARY

This invention relates to building a landmark database from web data. Inone embodiment, a computer-implemented method builds a landmarkdatabase. Web data including a web page is received from one or morewebsites via one or more networks. The web data is interpreted using atleast one processor to determine landmark data describing a landmark. Atleast a portion of the landmark data identifies a landmark. Finally, avisual model is generated using images determined based on the landmarkdata. A computing device is able to recognize the landmark in an imagebased on the visual model.

In another embodiment, a system builds a landmark database. The systemincludes a web data retriever module configured to receive web dataincluding a web page from one or more websites via one or more networks.A web data interpreter module is configured to interpret the web data todetermine landmark data describing a landmark. At least a portion of thelandmark data identifies a landmark. Finally, a visual model generatoris configured to generate a visual model using images determined basedon the landmark data. A computing device is able to recognize thelandmark in an image based on the visual model.

By mining web data, embodiments of the present invention can build alarge, comprehensive landmark database that may be used to recognizelandmarks.

Further embodiments, features, and advantages of the invention, as wellas the structure and operation of the various embodiments of theinvention are described in detail below with reference to accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate the present invention and, togetherwith the description, further serve to explain the principles of theinvention and to enable a person skilled in the pertinent art to makeand use the invention.

FIG. 1 is a diagram illustrating a system for mining web data to build alandmark database according to an embodiment of the present invention.

FIG. 2 is a flowchart illustrating a method for mining web data to builda landmark database according to an embodiment of the present invention.

FIG. 3 is a diagram illustrating an example of parsing web data todetermine landmark information.

FIG. 4 is a diagram illustrating an example of extracting landmarkimages from results of an image search.

FIG. 5 is a map illustrating locations of landmarks in an examplelandmark database built according to an embodiment of the presentinvention.

The drawing in which an element first appears is typically indicated bythe leftmost digit or digits in the corresponding reference number. Inthe drawings, like reference numbers may indicate identical orfunctionally similar elements.

DETAILED DESCRIPTION OF THE INVENTION

Embodiments of the present invention mine landmark information from theweb to build a landmark database. The landmark database may be used torecognize landmarks in images. By using the vast amount of dataavailable on the web, embodiments may build a landmark database that islarge and comprehensive. Accordingly, a landmark recognition engine mayrecognize a large number of landmarks using the landmark database.

In the detailed description of the invention that follows, references to“one embodiment”, “an embodiment”, “an example embodiment”, etc.,indicate that the embodiment described may include a particular feature,structure, or characteristic, but every embodiment may not necessarilyinclude the particular feature, structure, or characteristic. Moreover,such phrases are not necessarily referring to the same embodiment.Further, when a particular feature, structure, or characteristic isdescribed in connection with an embodiment, it is submitted that it iswithin the knowledge of one skilled in the art to effect such feature,structure, or characteristic in connection with other embodimentswhether or not explicitly described.

FIG. 1 is a diagram illustrating a system 100 for mining web data tobuild a landmark database according to an embodiment of the presentinvention. System 100 includes a processing module 110 that builds alandmark database 108 based on data from websites 102 retrieved via oneor more networks 180, such as the Internet. To build landmark database108, processing module 110 includes a web data extractor module 120 andvisual model generator module 130.

In general, system 100 operates as follows. Web extractor module 120retrieves web data from one or more websites 102. Web extractor module120 interprets the web data to determine landmark information. Thelandmark information may include a list of landmark names. Using thelandmark names, geocoding module 140 determines a location for eachlandmark. Also using the landmark names, visual model generator 130finds images of each landmark and constructs a visual model of thelandmark. The visual model may be used, for example, to recognize alandmark. Finally, the landmark data, landmark locations and visualmodel are stored in landmark database 108. Each of the components arediscussed in greater detail below.

In the illustrated embodiment, web extractor module 120 includes a webdata retriever module 122 configured to retrieve web data from one ormore websites 102. Web data retriever module 122 is configured to knowwhere on the Internet to find websites 102. For example, web dataretriever module 122 may be configured to navigate through a travel sitesuch as a wikitravel.com site. To navigate through the travel site, webdata retriever module 122 may know the Uniform Resource Locator (URL)patterns to access web data (such as web pages) of the site thatdescribe landmarks. Alternatively, web data retriever module 122 mayknow a URL of one or more pages that link to pages that describelandmarks. Either way, web data retriever module 122 is configured toknow or determine the location of web data that includes informationabout landmarks. An example operation of web data retriever module 122is described in detail below.

Using the URLs, web data retriever module 122 retrieves web data. In anexample operation, web data retriever module 122 sends an HTTP requestaddressed to a URL of a website 102. Website 102, for example, may beaccessed through a web server that responds to an HTTP request with anHTTP response. The HTTP response may include web data with informationabout a landmark. In an example, the web data may include a web page.The web page may include Hypertext Markup Language (HTML), extendablemarkup language (XML), images, scripts or multimedia content.

Once the web data is retrieved, a web data interpreter module 124 mayinterpret the web data to determine landmark data describing a landmark.To determine the landmark data, web data interpreter module 124 may usea web data parser module 126 to parse the web data based on one or moreextraction rules. The extraction rules may be based on semantics cluesembedded in the structure of the web data. For example, web data parsermodule 126 may search the web data for one or more tags or headers. Atthe location of a tag or header, web data parser module 126 may extracta portion of text from the web data. That portion of text may includeinformation about a landmark. For example, the landmark data may includethe name of the landmark. The landmark data may include a city, country,or continent where the landmark is located.

In other embodiments, web data interpreter module 124 may extract thelandmark data using computer vision techniques instead of or in additionto text parsing. An example operation of web extractor module 120 isdescribed in detail in later sections with respect to FIG. 3.

The accuracy of the landmark data determined by web data interpretermodule 124 depends on how consistently the web data is formatted. Manytravel sites, such as a wikitravel.com site, are formatted fairlyconsistently. Still, users making contributions to a travel site, forexample through a wiki, may raise the possibility that some of the webdata is formatted inconsistently.

To deal with inconsistent formatting, error checker module 128 may applyone or error checking rules to improve the quality of the landmark data.The error checking rules may be heuristics used to determine whether aname is likely a real landmark name as opposed to other text captured byaccident. The error checking rules may include checking to see that alandmark name is not too long or that a majority of the words in alandmark name start with a capital letter. If error checker module 128determines that a landmark data is inaccurate, then error checker module128 may remove the landmark data from the list of landmarks sent ontovisual module generator module 130 and geocoding module 140.

In one embodiment, the landmark data parsed from the web data mayinclude a geolocation (e.g. latitude/longitude) of the landmark. In thatembodiment, no further geocoding step is necessary. In other cases,geocoding module 140 may determine a location of the landmark.

Geocoding module 140 determines landmark locations. In an embodiment,geocoding module 140 may receive a list of landmarks with each landmarkdescribed by some landmark data. The landmark data may include alandmark name and a city, country or continent where the landmark islocated. Geocoding module 140 determines a specific location (such as alatitude/longitude) of the landmark. To determine the location,geocoding module 140 may access a geocoding service 106. Geocodingmodule 140 may send a request to geocoding service 106. In response,geocoding service 106 may look up a latitude/longitude location and sendthe location back to geocoding service 106. The request from geocodingservice 106 may include a landmark name and city.

In another embodiment, the landmark data parsed from the web data mayinclude a street address. In that embodiment, the request sent togeocoding service 106 may include the street address of the landmark. Inresponse to the request, geocoding service 106 looks up the location ofthe address and sends the location of the address back to geocodingmodule 140. In some cases, only a partial street address, such as thecity name, may be available. In that case, geocoding module 140 may usethe available information to estimate the location of the landmark.

In a third embodiment, geocoding module 140 may determine a landmarklocation by correlating an image of a landmark with one or more imageswith known locations. The landmark image may be determined using animage search as is discussed below. The images with known locations maybe part of an image database, photo-sharing website, or a street viewimage database. The images may have location information embedded, forexample, by a digital camera in an Extendable Image File (EXIF) header.The images may be correlated with the landmark image using an imagematching algorithm. When geocoding module 140 finds a match, thelocation of the matching image is adopted as the landmark location, oran aggregation of the combination of locations from the images isadopted as the landmark location.

Either serially or in parallel with geocoding module 140 determining thelocation of the landmark, visual model generator module 130 generates avisual model of the landmark. To generate the visual model, visual modelgenerator module 130 first determines images of the landmark based onthe landmark data with landmark image module 132. Then, visual modelgenerator module 130 constructs the visual model with visual clusteringmodule 138.

Landmark image module 132 determines images of the landmark based onlandmark data. Landmark image module 132 may request an image searchwith an image retriever module 134. Image retriever module 134 maygenerate a search query based on landmark data. Image retriever module134 may send the search query to an image search service 104. Imagesearch service 104 may be any image search engine, such as a GOOGLEImage Search engine. In response to the search query, image searchservice 104 may send back a set of results.

Image retriever module 134 may generate the search query to maximize theeffectiveness and accuracy of image search service 104. To generate thequery, image retriever module 134 may concatenate a landmark name andits city. For example if the landmark name is “Eiffel Tower” and itscity is “Paris”, the search query may be “Eiffel Tower Paris”.

Some image search engines, such as the GOOGLE Image Search engine, takeindividual words in the query as an AND relation. In those embodiments,image retriever module 134 may use additional rules to ensure betterimage search results are obtained. For example, image retriever module134 may not add country in the query, as adding the country may make thereturned images more relevant to the country than to the landmark. Ifthe landmark name consists of less than four words, image search enginesmay put quotes around the landmark name to ensure that image searchservice 104 searches for the an exact phrase. If the landmark consistsof four or more words, image retriever module 134 may not use quotes, asthe AND relation between words in the long landmark name may make thequery sufficiently distinctive.

Image retriever module 134 sends a search query and receives a set ofsearch results from image search service 104. The search results mayhave a large number of false positives. To determine a visual model fromthe image results, the images may undergo visual clustering by a visualclustering module 138 and pruning by an image checker 136. In oneembodiment, the visual clustering may occur prior to the pruning. Inanother embodiment, the pruning may occur prior to the visualclustering.

The images that are useful for constructing a visual model are generallyphotos of a large portion of the landmark without too many otherobjects. However, the search results may also include images, forexample, of maps, manuals, and logos. Some results may show the landmarkobstructed by faces or include large amounts of blank spaces. To dealwith this, landmark image module 132 may use an image checker module 136to filter out some of the images. Image checker module 136 may includeone or more classifiers trained to detect undesirable image types.

One possible classifier is trained to distinguish a photographic vs.non-photographic image. The classifier may be trained using an Adaboostalgorithm with low-level visual features such as those extracted with acolor histogram and hough transform. Also, a face detector may be usedto filter out photos where a landmark is obstructed by one or morefaces. Image checker module 136 may use any face detector or imageclassifier as is known to those of skill in the art of computer vision.

In addition to filtering out undesirable image types, a visualclustering module 138 may be used to identify similar images in theresult set. Given that a large number of the remaining images in theresult set are of the landmark, identifying these similar images furtherhelps to narrow the result set. Any visual clustering technique known tothose of skill in the art may be used. One such visual clusteringtechnique is discussed in U.S. patent application Ser. No. 12/119,359,“Automatic Discovery of Popular Landmarks”, which is incorporated byreference herein in its entirety. Visual clustering uses object instancerecognition techniques that are robust to variations in image capturingconditions, illuminations, scale, translation, clutter and occlusionand, in part, affine transformation. Based on the object recognition,clusters of similar images are formed. The resulting dense clusters ofimages are highly probable to contain true landmark photos that depictthe landmarks from similar perspectives.

The landmark images selected by visual clustering module 138 may besaved as a visual model in landmark database 108 along with landmarkdata identifying the landmark (such as a landmark name). A computingdevice may use the images to recognize whether a landmark exists in animage, including a photograph or a frame of a video. To recognizewhether a landmark exists in an image, a computing device may use visualclustering to determine that an image is similar to the images includingthe landmark.

In an alternative embodiment, visual model generator module 130 may usethe landmark images to generate a general visual model of the landmark.In that embodiment, the visual model is saved to landmark database 108.A computing device may use the visual model to recognize the landmark inimages. Any modeling or recognition technique may be used as is known tothose of skill in the art.

Each of processing module 110, web extractor module 120, visual modelgenerator module 130, web data retriever module 122, web datainterpreter module 124, web data parser module 126, error checker module128, geocoding module 140, visual model generator module 130, landmarkimage module 132, image retriever module 134, image checker module 136,and visual clustering module 138 may be implemented in hardware,software firmware or any combination thereof.

In one example, the modules of system 100 may be software modules thatrun on one or more computing devices. A computing device may include acomputer, workstation, distributed computing system, embedded system,stand-alone electronic device, networked device, mobile device, rackserver, television, set top box, mobile computing device or other typeof computer system. A computing device may include a processor and amemory. The memory may include a primary and a secondary storage device.The computing device may have input and output devices including a userinput device and a display device. The computing device may also have anetwork interface that enables the computing device to communicate overa network.

Image search service 104 and geocoding service 106 may be any types ofservice, including, but not limited to, a web service running on a webserver. The web server may be a software component running on acomputing device. Similarly, websites 102 may be any source of web data.In an example, websites 102 may be web servers addressable over one ormore networks, such as the Internet. Again, the web servers may be asoftware component running on a computing device.

FIG. 2 is a flowchart illustrating a method 200 for mining web data tobuild a landmark database according to an embodiment of the presentinvention. Method 200 may be used in operation of system 100 in FIG. 1.Method 200 is described with respect to illustrative examples in FIGS.3-5. These examples are provided for clarity, and method 200 should notbe limited thereto.

Method 200 begins by retrieving web data from one or more websites atstep 202. As discussed above, web data may be retrieved according to thestructure of the websites. One example website, a wikitravel.com site,is organized according to a geographical hierarchy. A main page of thewikitravel.com site may include links to pages for each continent. Eachcontinent page includes links to pages for countries in the continent.Each country page includes links to pages for cities in the country.Finally, each city page includes information about landmarks locatedwithin the city. The term “city” used in reference to the wikitravel.comsite is a flexible concept that includes both an urban area and a largermetropolitan area with suburbs and satellite cities. With thishierarchy, web data may be retrieved recursively from the wikitravel.comsite.

In one example operation of step 202, a main page of wikitravel may beretrieved. The main page may include a list of links to continent pagesthat includes a link to a page for Asia. Using the link, the page forAsia is retrieved. The page for Asia may include a list of links tocountry pages including a link to a page for Japan. Using the link, thepage for Japan is retrieved. The page for Japan may include a list oflinks to city pages including a link to a page for Kyoto. The page forKyoto is retrieved as illustrated with a page 300 in FIG. 3. Page 300for Kyoto includes information about landmarks located within Kyoto.

After retrieving the web data at step 202, the web data is interpretedto determine landmark data at step 204. As mentioned earlier, the webdata may be one or more web pages formatted in HTML. In the example of awikitravel article, the HTML document may have a tree structure e_(d),where the interior nodes may correspond to tagged elements and the leafnodes store text. A travel guide article may be modeled as d=e_(d)(i,j), t_(d)(i, j)}, where e_(d)(i, j) is the jth node at level i of treee_(d) and t_(d)(i, j) is the text stored at node e_(d)(i, j). To extractthe landmark names, the text of the leaf nodes, t_(d)(i_(leaf), j) isdetermined to be either landmark or non-landmark names.

To determine whether the text of the leaf nodes is a landmark name,heuristic rules may be used. In the example of a wikitravel.com page,three heuristic rules may be used. If all of the following threeconditions are true, then the text may be a candidate for a landmarkname. Otherwise, the text may not be a landmark name. First,e_(d)(i_(leaf), j) must be within a section entitled “See” or “To See”in the HTML document. Second, e_(d)(i_(leaf), j) must be a child of anode indicating “bullet list” format. Third, e_(d)(l_(leaf), j) mustindicate that the text is in a bold format. An example is illustrated inpage 300 in FIG. 3.

Page 300 is an HTML document that has a tree structure of HTML elements.Among the leaf elements in the tree, text 304 and 308 satisfy the threeconditions above. Text 304 and 308 are within a section entitled “See”as illustrated by a section header 302. Text 304 and 308 are childelements of bullets as illustrated by bullets 306 and 310. Finally, text304 and 308 are formatted in boldface. Thus, text 304 and 308 arecandidates for landmark names.

As mentioned earlier, the quality of the candidate landmark names parsedfrom the web data depends on the regularity of the data structure. Sometext may be incorrectly parsed from the web data. To filter out dataincorrectly parsed, one or more error checking rules are applied at step206. As mentioned earlier, the error checking rules may include checkingto see if a landmark name is too long or if most of its words are notcapitalized. Using these rules some of the candidate landmark names maybe rejected. The result is an accurate list of landmark names. Also someof the landmark location information may be recorded as well, such asthe city, country or continent where the landmark is located. In theexample with a wikitravel.com site, approximately 7000 landmarks may beincluded in the list.

Using the landmark data, landmark images are retrieved at step 208.Landmark images may be retrieved by sending a request to an image searchservice. The request may include a search query generated using landmarkdata as described above. In response to the request, the image searchservice returns results. Example results are illustrated in a page 400in FIG. 4.

The result may include some images that are not pictures of thelandmark. For example, some images may be maps, logos, etc. At step 210,image checking rules may be applied to prune out these false positivesearch hits. As described above, the image checking rules may includeapplying image classifiers trained to detect undesirable types ofimages. In one embodiment, the pruning of step 210 may occur subsequentto the visual clustering in step 212.

Page 400 shows an example result set returned by an image search engine.Among the results are maps 420, 422, and 424. Map images, such as maps420, 422, and 424, may not helpful in developing a visual model able torecognize landmark images. For this reason, a classifier trained todetect maps may be used to detect these images. When maps 420, 422, and424 are detected, they may not be removed from the result set.

After some of the false positives are filtered out, visual clusteringmay be used to generate a visual model at step 212. Visual clusteringhas the ability to identify similar images. In page 400, visualclustering may identify images 402, 404, 406, 408, 410, 412, 414, and416 as being similar. In this way a pool of images of the landmark areidentified to use as a visual model. Further, visual clustering may beused to recognize the landmark in other images. In this way, visualclustering narrows the images from the result set and may be used torecognize the landmark in other images.

At step 214, a geolocation (e.g., latitude and longitude) of thelandmark is determined. As discussed above, the geolocation may bedetermined by requesting a geolocation from a geocoding service. Asmentioned earlier, in the example where landmarks are extracted from awikitravel site, about 7000 different landmarks, along with city andcountry information for each landmark, may be determined. In an example,a GOOGLE geocoding service may be used to determine the geolocations. Inan example, of the about 7000 different landmarks extracted fromwikitravel.com, about 2000 may have geolocations available from theGOOGLE geocoding service. The approximately 2000 geolocations areillustrated in a diagram 500 in FIG. 5.

FIG. 5 shows diagram 500 with a map of the geocoded locations oflandmarks indicated by dots that may be identified in an exampleembodiment of the present invention. The map shows that the list oflandmarks is large and comprehensive. Also, the landmarks identified arewidely distributed across the globe as opposed narrowly tailored to theinterests of a particular user group.

Examples have been provided with respect to a wikitravel.com site andGOOGLE image search and geocoding services. These examples areillustrative and are not meant to limit the present invention.Embodiments of the present invention may be used to extract landmarksfrom a wide variety of websites.

The Summary and Abstract sections may set forth one or more but not allexemplary embodiments of the present invention as contemplated by theinventor(s), and thus, are not intended to limit the present inventionand the appended claims in any way.

The present invention has been described above with the aid offunctional building blocks illustrating the implementation of specifiedfunctions and relationships thereof. The boundaries of these functionalbuilding blocks have been arbitrarily defined herein for the convenienceof the description. Alternate boundaries can be defined so long as thespecified functions and relationships thereof are appropriatelyperformed.

The foregoing description of the specific embodiments will so fullyreveal the general nature of the invention that others can, by applyingknowledge within the skill of the art, readily modify and/or adapt forvarious applications of such specific embodiments, without undueexperimentation, without departing from the general concept of thepresent invention. Therefore, such adaptations and modifications areintended to be within the meaning and range of equivalents of thedisclosed embodiments, based on the teaching and guidance presentedherein. It is to be understood that the phraseology or terminologyherein is for the purpose of description and not of limitation, suchthat the terminology or phraseology of the present specification is tobe interpreted by the skilled artisan in light of the teachings andguidance.

The breadth and scope of the present invention should not be limited byany of the above-described exemplary embodiments, but should be definedonly in accordance with the following claims and their equivalents.

What is claimed is:
 1. A computer-implemented method for building alandmark database, comprising: (a) receiving web data including a webpage from one or more websites via one or more networks; (b)interpreting the web data using at least one processor to extractlandmark data describing a landmark from the web data, the landmark dataincluding a name that identifies the landmark and a portion of a streetaddress where the landmark is located; (c) applying one or more errorchecking rules to remove inaccurate landmark data from the landmarkdata; (d) generating a visual model using images determined based on thelandmark data including the name; (e) sending, to a geocoding service, arequest with the name of the landmark and the portion of the streetaddress where the landmark is located; and (f) in response to therequest, a location of the landmark from the geocoding service, thelocation determined based on the name of the landmark and the portion ofthe street address where the landmark is located included in therequest, whereby a computing device is able to, using the visual model,recognize the landmark in an image, different from the images determinedbased on the landmark data, and correlate the image with the name. 2.The method of claim 1, wherein the interpreting the web data of step (b)comprises parsing the web data to determine the landmark data accordingto one or more extraction rules.
 3. The method of claim 1, wherein thegenerating the visual model of step (d) comprises: (i) retrieving a setof results from a search engine, wherein at least one result in the setof results includes an image of the landmark; and (ii) constructing avisual model based on images of the landmark in the set of results,wherein a computing device is able to recognize the landmark in an imageusing the visual model.
 4. The method of claim 3, wherein the generatingthe visual model step (d) further comprises: (iii) applying a detectorto determine that the result in the set of results does not include animage of the landmark.
 5. The method of claim 1, further comprising: (g)storing the location, the visual model, and a portion of the landmarkdata identifying the landmark in a database of landmarks.
 6. The methodof claim 1, wherein a computing device is able to recognize the landmarkin an image from a frame of a video based on the visual model.
 7. Asystem for building a landmark database, comprising: a web dataretriever module configured to receive web data including a web pagefrom one or more websites via one or more networks; a web datainterpreter module configured to interpret the web data to extractlandmark data describing a landmark, wherein the landmark data comprisesa name that identifies the landmark and a portion of a street addresswhere the landmark is located; an error checker module configured toapply one or more error checking rules to remove inaccurate landmarkdata from the landmark data; a visual model generator configured togenerate a visual model using images determined based on the landmarkdata including the name; and a geocoding module configured to send arequest with the name of the landmark and the portion of a streetaddress where the landmark is located to a geocoding service and toreceive a location of the landmark from the geocoding service inresponse to the request, the location determined based on the name ofthe landmark and the portion of the street address included in therequest, wherein a computing device is able to, using the visual model,recognize the landmark in an image, different from the images determinedbased on the landmark data, and correlate the image with the namewherein the web data retriever module, the web data interpreter module,and the visual model generator are implemented on at least one computingdevice.
 8. The system of claim 7, wherein the web data interpretermodule comprises a web data parser module configured to parse the webdata to determine the landmark according to one or more extractionrules.
 9. The system of claim 7, wherein the visual model generatormodule comprises: an image retriever module configured to retrieve a setof results from a search engine, wherein at least one result includes animage of the landmark; and a visual clustering module configured toconstruct a visual model based on images of the landmark in the set ofresults, wherein a computing device is able to recognize the landmarkusing the visual model.
 10. The system of claim 9, wherein the visualmodel generator module further comprises: an image checker moduleconfigured to apply a detector to determine that a result in the set ofresults does not include an image of the landmark.
 11. The system ofclaim 7, further comprising: a landmark database that stores thelocation, the visual model, and a portion of the landmark dataidentifying the landmark in a database of landmarks.
 12. The system ofclaim 7, wherein a computing device is able to recognize the landmark inan image from a frame of a video based on the visual model.
 13. Anapparatus comprising at least one non-transitory computer readablestorage medium encoding instructions thereon that, in response toexecution by a computing device, cause the computer device to performoperations comprising: receiving web data including a web page from oneor more websites via one or more networks; interpreting the web datausing at least one processor to extract landmark data describing alandmark from the web data, the landmark data including a name thatidentifies the landmark and a portion of a street address where thelandmark is located; applying one or more error checking rules to removeinaccurate landmark data from the landmark data; generating a visualmodel using images determined based on the landmark data including thename; sending, to a geocoding service, a request with the name of thelandmark and the portion of the street address where the landmark islocated; receiving a response to the request, the response including alocation of the landmark from the geocoding service, the locationdetermined based on the name of the landmark and the portion of thestreet address where the landmark is located included in the request;using the visual model, recognizing the landmark in an image, differentfrom the images determined based on the landmark data; and correlatingthe image with the name.